#include <iostream>

using namespace std;

template <typename T> class Blob;
template <typename T> class BlobPtr;
template <typename T>
bool operator==(const Blob<T>& lhs, const Blob<T>& rhs);

template<typename T>
class Blob{
private:
public:  
    friend class Blob<T>;
    friend class BlobPtr<int>;
    friend bool operator==(const Blob<T>& lhs, const Blob<T>& rhs);
};

//在类模板外使用类模板命
// template<typename T>
// BlobPtr<T> BlobPtr<T>::operator++(int){
//     //...
// }
template<typename T>
class Point{
private:
    int x,y;
public:
    Point& operator++(){
        ++x;
        ++y;
        return *this;
    }
    Point& operator--();
};

template<typename T>
Point<T>& Point<T>::operator--(){
    x--;
    y--;
    return *this;
};
int main(){

    return 0;
}